package com.jielin.handling.util;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.lang.reflect.Method;

import org.apache.commons.codec.binary.Base64;

/**
 * @author wr
 *
 */
public class Base64Util {
/*	  	1.java 中使用base64编码和解码：
	 	   通过反射使用java 中不对外公开的类：*/
	/***
	 * encode by Base64
	 */
	public static String encodeBase64(byte[]input) throws Exception{
		Class clazz=Class.forName("com.sun.org.apache.xerces.internal.impl.dv.util.Base64");
		Method mainMethod= clazz.getMethod("encode", byte[].class);
		mainMethod.setAccessible(true);
		 Object retObj=mainMethod.invoke(null, new Object[]{input});
		 return (String)retObj;
	}
	/***
	 * decode by Base64
	 */
	public static byte[] decodeBase64(String input) throws Exception{
		Class clazz=Class.forName("com.sun.org.apache.xerces.internal.impl.dv.util.Base64");
		Method mainMethod= clazz.getMethod("decode", String.class);
		mainMethod.setAccessible(true);
		 Object retObj=mainMethod.invoke(null, input);
		 return (byte[])retObj;
	}
	
	/**
     * @param bytes
     * @return
     */
    public static byte[] decode(final byte[] bytes) {
        return Base64.decodeBase64(bytes);
    }
    /* 2.使用commons-codec.jar：*/
    /**
     * 二进制数据编码为BASE64字符串
     *
     * @param bytes
     * @return
     * @throws Exception
     */
    public static String encode(final byte[] bytes) {
        return new String(Base64.encodeBase64(bytes));
    }
    
    /* 3.使用 sun.misc.BASE64Encoder()*/
    /** 
     * 编码 
     * @param bstr 
     * @return String 
     */  
    public static String encode1(byte[] bstr){  
    return new sun.misc.BASE64Encoder().encode(bstr);  
    }  
  
    /** 
     * 解码 
     * @param str 
     * @return string 
     */  
    public static byte[] decode1(String str){  
    byte[] bt = null;  
    try {  
        sun.misc.BASE64Decoder decoder = new sun.misc.BASE64Decoder();  
        bt = decoder.decodeBuffer( str );  
    } catch (IOException e) {  
        e.printStackTrace();  
    }  
  
        return bt;  
    }  
    public static void main(String[] args) {

        /*
        String str="";
        String temp= str.substring(str.indexOf("/")+1,str.indexOf(";"));
        String temp1= str.substring(str.indexOf(",")+1);
        System.out.println(temp);
        System.out.println(temp1);
        */
        System.out.println("---------------start------------------------"+"/n");
//      String strImg = GetImageStr();
      String strImg = "/9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAkGBwgHBgkIBwgKCgkLDRYPDQwMDRsUFRAWIB0iIiAd\n" +
              "Hx8kKDQsJCYxJx8fLT0tMTU3Ojo6Iys/RD84QzQ5Ojf/2wBDAQoKCg0MDRoPDxo3JR8lNzc3Nzc3\n" +
              "Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzf/wAARCAIAAaUDASIA\n" +
              "AhEBAxEB/8QAHAAAAQUBAQEAAAAAAAAAAAAAAgABAwQFBgcI/8QAUhAAAQQABAIFBgcMBwcFAAMA\n" +
              "AQACAxEEEiExBUEGEyJRYTJxgZGx0RQjQpKTocEVFjNSU3JzgqKy0uEkNFRiY4PwJTVDRGSj4gdV\n" +
              "dMLxNkWz/8QAGQEBAQEBAQEAAAAAAAAAAAAAAAECBAMF/8QAIBEBAQACAwEBAQEBAQAAAAAAAAEC\n" +
              "ERIhMQMTQTJCUf/aAAwDAQACEQMRAD8A86fcrzoATyPJItMZAoOzbUnOYvzVqFKS57W2AQPJXE6/\n" +
              "6CI06rcHcgQpcr2MLnHUOvwpRGMMkDgyuZKsOlAjOgcNkrSIyNa+qu9QRsikLJWZusyyE8tU9NlD\n" +
              "RlAAT4QSRSvZHGXPdtXJTwX8BhLhDnGwHeU4LoYXhjercx8Yc0BunZK5uKCeeaNmfqomanLv6lqz\n" +
              "YuCGS53OlGXKyJzTQPebUEvEsQGQFjBZL/la+jv71z3wRpeJI6BBJLL2KuumkxcvVWNDYedL9KqQ\n" +
              "tySuDX27NreyRULYHEPmccsTdAG8yVK6Bww8cErGt1zNy+U7znkpGwuO9uF92hKPD4csxAlxBLYQ\n" +
              "263KbTigdEyCMOf2W8mDmjjlfK5zXBsWGvyjp6+9HO9+MmJkBLWbUKVTGEiQcmjya2CTs1o2JcRO\n" +
              "GxsAjbtruVNG8vjNdkt5FPh4w8DrBmcdjsikYWtLXtAJOyqq0rmZWucCW3qEMmHdnYGsDa10UrhU\n" +
              "ZDcxJ5JRyEGn77WiHkz5NctXvzUbomSQF9ksBpwKWJe5xAYCa70LpXFpBZTL1rRJ0Iw1zHtHd7Fs\n" +
              "RPd1IJNA6KvhGR4onQtjaNS46lWWjKaBdps0jTwWcsiQog0kMa5xF1spcRE4fFtJcC7UeCijjfHG\n" +
              "SHkSSHykRbLhnMj7Ti45iN9Fhoxdh4Y5WQZbFXaiwsoDyctOvsl59iGeVsUxjjiy9ZqQw3aCGPMS\n" +
              "KLRm9ZWxfZ8YcmVxde9q09roIWMjdbiburpSQNbgWZHC5JBTa1oFUZZZJZXgtysHkjLusWbVJiZG\n" +
              "0WuzWarKFCY2taHP2Gtc073AMLnNzO7ydvQosrnZSTmBTQmL43NzRtI86ibbiS9pz/JFqVgLWEZd\n" +
              "TypWcHgJpgXOIiYPlOUFcROAB0s6kclpcPw8QY+WW3NFGu5RCOMvL3vLgNGtaN1JjnmOEwt7AIsg\n" +
              "KKfF4kPaSwmt1VZO4jK9mY942UDS97QNS06FStb1YDW+c2mmkzXUM2XU8wgw7TebbmpWvJhBc3KH\n" +
              "aUjic1rHEWK20U6BPoxOL39k6AUqUkBjlb1Q003CnxAzAOZlAGqZzRIGONWfQp2sSB3V29ztQ3bk\n" +
              "szh+ebHS4i6F1ZUnEOtiY2FpD8yuMwzYcM1rD23DVNahtFPN1bXRsGZxOngqMgkbrV5CSaVx7Hx0\n" +
              "9wLrbR15qGO8uZw1dYVw/wDVZcvxUpAFOfTm/atZjWsY1seYgi7VDHMzMYPJdH7Fp8MOElwNZpDM\n" +
              "wG3g35l6evO5aps8kbGgNJFb/iqtLKxlOc8OJvTYgq7g4m4gx4aWUsDn02UC686jx/DcNg8VJFLi\n" +
              "2udfyTos8dLMlUygNLs9mvIUbY3Yjtx2GnYO2U7sEwzB2GZmb+MTopWxStyh7iBRAY0UE6i8iwZd\n" +
              "FmEuXv1Ujmwlp7Re7e2qeHBERdbKywWigTRUZMDJcvWNYSfIWPTkhneSRqarSmpLe4dBgpIHOlhL\n" +
              "nFx8k6BJNU288ZE98pZC3rC41lbqum4T0ZfM0SY97mjkxp1QdC4M8+JL+0Rlynuu12TGgUF3TGOW\n" +
              "5aZTOjPDcpBje7zyFJ3RfhemWFw/zCtpoooq1tOMZ5Vzrui2Bu2h7fAOUrODRYePJAA2wRmy2Vum\n" +
              "u5EA3LRaE4w5VybOC3i2NOIexhPlADvVmboxhp588mIneRQt+q6AwtINaHdGI2nVOMOVc/N0Ygmk\n" +
              "L+uezuDWqF3QuOy/4W+nbgsXUBopTNDSnGJyrkHdD3uZljxuStzkVmTotLK1jRPG0tblvLuupDQC\n" +
              "jYwE2nCNTOuP+83FZC0YmB188ptU5eg/ELIE+GI8SbXfkAFLcpxhc7Xn7uiHEsrBHJA0t/vOUb+i\n" +
              "nE+sDpHxnxsr0d8XZ03UJZpR3TinKvPvvU4mTm+KI5U5NL0V4nplhFjucvQ2NAICmawXXaU4rzrz\n" +
              "P71OLUCcGTZ5PaoZeinFjbWYJ55+U1erRt0O6LKOQ1WuMOdeSno7xkZWnhkwbzyi/tVtvC+K4eMM\n" +
              "HDcQ7MebDt6l6lHoaoKRxJ9CxfnKY5V5VNwniL4bfhphrYqM2PDZVDgOInM52Dmc9x0JY4EBewt3\n" +
              "Kc6lThI1zeOw8PxIIj+BYhjuT3NJHrpXm4OXDgVh5HSM2cWmh5l6uW23VDVck4bObyZwnGeWUOB2\n" +
              "1ZuqLWPa9zjudsy9nLWEVkaQd7agdhsO7yoInHxYCpPmc3jxhcWhz2gu/uqaDDyzU3q3D9Ur1lmE\n" +
              "hYdIYx5mBH1TRRDG+pX81/R5iOH4kZepw0srr3yEAK3Jw7i+IprsJL1P4rW0vQmin0dAp2ABwoKf\n" +
              "ml+leafcXirSP6HOCPJ7N0FEeAcUlcKw0o11LtLXqznNY0k+hUnam6V/KJM64TDdEcbJYf1UZ/vO\n" +
              "tTy9EcfqGvicOZDqXaR+XasAWE/OLfpXnOJ6PcSiY0Mw7n1uWutVHYPF4YudLBK3wLCvUSzRRlt7\n" +
              "gFZ/GLPo8nfHNnyvOUHZisMiIc0vGg8m16RLgcJPZlw0bj35Qgbw/CM8jDxCtuyFn8V/V5dPE6TH\n" +
              "k5z2XDs0rcrTmrLXpXpbMHhSP6vDf5gRN4fgwLGHj+aFcvjtZ9tPKywl1PBJP1IzEzNRFOHdsvUT\n" +
              "w/COPaw8Wv8AcChn4Fw2bysM1p726LP42L+0ryrHRAEPAGV3Zd4KpwI5MYY5BbRba7xyXp2J6GcO\n" +
              "nY5gfiGB2vZft9Sqx9AMA2YSNxGJsAfKHuWp87D9JXJyYMROe9gdryJ0B71mPwEvWSEBrmFw7VWv\n" +
              "UB0QwJAuXEH9ce5MOhfDg6xLiB4Zh7k4ZJ+mLzbDYWN7wzFPkDTtld5OiscQwWBgghdg53vxDO0b\n" +
              "efUV3WK6EwFhdh8U9rgOz1moXE8VwEvD8W+Gdoa7w5+KzljY3jZkqzY6PFxZJ4ZGG9JGOst8wWf1\n" +
              "cIc/LFfa0fITZHmV/MwdlupNahEHMZYGv41jZefjWl3BcQx2Dw7Yopomt3ot1SWZLhxiHZmOjaO5\n" +
              "JTZpJ0AGV2LGbNbW2T6V2LdguM6Dv/puLadS6NrvrXaehdzlqRvilYTjWk9KsmT0npKkCy2jY3Sr\n" +
              "SAtGGndAxaApWAWU1WjockD1qiTDUap0Dg2UiDYT6CktygmabCTmNcPFPEBXejodyCrlpymaLCNz\n" +
              "RvSJgFIBYKUlJqCe9aQONESYAd6YmkBjYpgaJQZ+SYnxQTl+ybNaBptGKKAiCWhMCkkBqED68yja\n" +
              "G1aEtNohpolCLRmtPoDukmoWoAkdenJRnRpUrhSA6ilUAx1OVlh7NqtGKerDR6kUbXWloN0tkhqU\n" +
              "2ALOYQlrnE0FZA0SqkRCwGtQjpHlsJi08k2oAiSypUVA42TodkgU0mkrdkkw8E6GiPdyXH/+oPDQ\n" +
              "/CR49jTmi7L67iuwG6p8Zw7cVwnEwuF54zp4rGU3GsOq8YLcxotcNfK8E72PYSYRmB5E7o8QWt0e\n" +
              "XAjTRRx20dqXsOOgK53VIJs4YMroywjkBaSCSSFrqEZcRuQ7RJTS6D0FP+1pwXbxaD0hd83YWvPu\n" +
              "hz2M45G1oFujcD6l6CzUBdkctSdydMNwiCrJxsiDQSkETQgQBBIUo8lBuSjagdpFaogmpEEDpBOE\n" +
              "kD0CEwIFBFl0QlvNBPGaBUg2UMHavVTONBA6QNIWnvTkhAVhPSj5py+jSArpMTaYWbSCBxumO6XN\n" +
              "PWqAmKRqFqMUgQRN3S0pJo1QSJAJBJAkkkkASG0AUpHpQIGa3tWpdtEDfKRt1JQF5k7RumRMQENk\n" +
              "aEDVEgQTVqnSQNSW6cGk+hQR1qmIUlBI+ZBGCUVpFqVUoC5JnNzAtOoOhTIgdCUpHjmOw4jxk7JR\n" +
              "+DkcKPcCom4eKZuZ9DSmre6RYPLx3FNI0u7771VHqGvblDACCDa5Pp068e1OLhgYwBtuHektCNvZ\n" +
              "Ac7UJLx5V6acp0SDWcawZAtzy4WdxoV6S0aXzXmvRskcYwjqoF9H1L0pgOmi+hjduHIYGqcbpwPU\n" +
              "iFFaqHbSI6Jgi5oHaPrUjQACgOg8ykB28UCAtENUwqtwnBAG6AgEWUJm96fN4IHG6ewdKQgglPY1\n" +
              "1QOBR0REm/BA13ci3QFeqSAaKQG1Q2ySZ26dvdzQO0lEEzSL3HrRZmD5bfWgQHenrVBJKzS3tHiX\n" +
              "BD8KgaNcREPO8e9NCcFG21QPEcAw9rHYYeeUe9I8b4UwU7iOF+lHvQaItG2is2PjnCXaDiWF83Wh\n" +
              "Tx8T4edW47Cn/Ob71BdSUDMbhXeTiYXeaQI/hEB2mj+eEEiShOJgv8PEP1wmdjcKw64iGv0gQT6F\n" +
              "A4dwVV3FOHNNnHYYf5rUx41wob8Rwv0rUFtvlKVgFFZMnH+Dxgk8Swx8BICfagHSngwjFY1p8zSU\n" +
              "G3vyTtWEelnCBVTSHzQvP2IXdLeGjyWYt/5uHd7kHQ2i3XM/fdha7GAx7vPEB9qdnStpBI4Xjfmj\n" +
              "3oOlsJX4rmT0pefJ4RjD58o+1N98uMf+D4PL5nStHsUHTgjvQk6aLmjxzjDm9ng7B+dNf2KriukP\n" +
              "GMIGPxGAwzIzIxrhnJNONWg7Buu6PSkANgIm7oEQmItGBZT5PFBCRSQGmqkIFoSHBBx/TCJsWLjm\n" +
              "A/CMq/Fc2HU8gg7XYC7PppHH9zWTP3Y+lxBxrLDWWaFmlzfTF0/O9J2HO0dX2q302SVI4pjeyyN1\n" +
              "Dm4GykvHi9due4K8M4hhh3Sj2r01q8t4U4ux+Ga/TLKKvnqvUhuu7Fx5HCIBNWqIKsiARBMlaoyu\n" +
              "leInwvBZZcLM6KXMxoe3fV1LOg4fx2eJskfGJsrtgQ1XOmf+4JB3yR/vBanCuzgYvMVRhjhfSLnx\n" +
              "eT5jE/3P6ScuLO+jYum0T8tEHMtwPSYafdQ/RM9yI4LpNt91f+yxdICeaJBzTeHdJa/3u6/0TEQ4\n" +
              "Z0id5fGnj/LZ7l0icboObbwfjul8bm9GUfYpG8H44NuNzfOHuXRAUCjaKBQc39xuN/K43iB+uP4U\n" +
              "J4FxZ2juNYk+aWvsXTJbUg5kdG8a4/G8WxX0zj9gRjooSak4jineeR5/+y6VKkHOfedh/wC1zn9d\n" +
              "/wDEn+8vCUfj5b8Xv/iXS8lQx2NmglDIGtdTczhWtG0GQOhOCF53Pd5yfei+8rhQq2eigVqtxs3w\n" +
              "SOXsvL35dGGtNwouEY+XFTOMkzcmXM1mWuaogi6J8KbQ+DtP6jfcrDejPCgADhQPV7kzMZKcQ1r5\n" +
              "Pi+vcDsdBdfYrmKlldMxrXOjYWkA97q0J7gFKIR0a4U5uU4ZmnM0Ux6KcIqhhm/Nb7lalxM8eEEz\n" +
              "ojG5l526G67tUeAnkmprnOcGdmTsg0/wN+P1KDNd0Q4Q4/gm/NHuTfeZwmtIR8we5Ts4jOcPnLyX\n" +
              "gWRlHdfs1W0w6aqjnfvN4R+RHqHuUg6JcIBv4K0+doW6fKQk2aQZLOjHCQNMM3zUB9ikHR3hbK/o\n" +
              "jStYN0CfkoM5vAeGiiMM0ekqy3hmCYA0QN9ZVobJ0Fb4DgwfwDfWUYweFHk4dnzVKnsBBE3DQNOk\n" +
              "MY8zVK3qyC0Mb81C93cnZQ0QOY2Cqa31J6pLdKkBg+pcv05sYXOdgYj6pB71012ub6cNzcLl7xET\n" +
              "6nNKDpYdWN8yl2UODJdhonV5TAfqVgBQIEbc0SADtIygEg6lNujvRO1opQVOJQmfCPYyETO+Sw7E\n" +
              "rkOOdG5ooJZ2cMaKALcj7N89F3jNHsO2quPDXCjWq882scrHmfRrhEGMjxBmjEDmODaeN9El3cEc\n" +
              "TA4RQt3txI3KSx03zyfO2Aie7G4baxI0gg6br1PZeXYSQjikDpXZ+skbkcGgc9iBsvUAe0V74f1j\n" +
              "IVommyhGycbKspL1TirQckTd1oY3TQj7i5fxp4x+0FqcN0wOH8Wfasnpn/u2AX5WKiH1rX4cP6Bh\n" +
              "qHyAfWLQWQaNIjvSAA3fJHzQIbokI3RWgQNIwFHuUQ03QGKHNJp1KYImgKh7TjVKgkFASIGggJIT\n" +
              "WVBNfNQDDMMz5ZGhzndkW3YBGCVDisYzDijmL8vZaGmj6QqFicIyYR1TMjs1Buh0I+1Dh+Gx4d9x\n" +
              "Pe05SKNbnmmwPEosUGNDJGSFozMcwjIe4muapTdJMOyVjIonG3uDi4huUN+Vrt6UF6HhrGOa7rpn\n" +
              "OzZs5dRPnpXJsJDNIZZM91WjzXtVGDisUuGxGJDJGthcW07XMfBRYXjT5cRKybCOj6tkbnEkdnNd\n" +
              "33VSDVZhWNgbAwvbEzTKHHb1p4sFDGCIWGIFpaWt8k+hZ+O4qMLiMMxjDI2Q28j5IOgrzlWYOLQy\n" +
              "SsiMU0bnymMZmAa1ff3JoSz4DDviyZcvi00f9VopwToqOM4lJFicPAzDSOZK5wJy9zeSXCsbLjoZ\n" +
              "JJIeqYHHqnfjDzckGgULdykKrVE0KUFeidKktwgfkEjqE4aQE9IBaKGqRRUia1AAbonDdURNGgjA\n" +
              "pALW6oq1RAUnpAIaAVz3TRmbhcx/wn/YukaLKw+lrAeFy5tuqf7EGvw7+oYc98TfYrCrcNF8Ow36\n" +
              "JvsCtgCtUApwnpqQCgSekqTt1BURHiXmPDyPa6iGEg+K5XE8axRLTHJIaGrswGvmXScSfkwUx3GQ\n" +
              "rgZZzq1q8vo9fnJVgcXxobYmeQSd3WkqJ6wgAUQEl5dvTUef8MzScTwzeTZm+1eog2V5hwWxxHBg\n" +
              "MFmdgJ9K9NboPFdeLxySA1onCAd6NpVZGNd0g6pGsHNCCLRNAOIH5qCw6KKVgbNGyQA3ThaMBrRT\n" +
              "WgDYUNkLQaThAVjuSAaTqhKQOqAjlCTQ0hCU7dkEjWs52lIwDUJDZJ5saoAugiBqlGSnN0FqiUko\n" +
              "Q4lNyCTdFAY1RUhARA2gdUOKxyzsDMPG8SRva5sgIGx1G/davpxugzeGtnhklkkwknWTyF8jy5vZ\n" +
              "GwA1s7LG4nwriHEMXDKxlsMlHr2U4jW7A2Hntdc1PyVGVg8POeFyxTQyuexvxYmIcAa0o62POoI+\n" +
              "HYrqcLcFSB0fWuM12BWbSvD61u1z3RAWgyuLcMfj3sihibEG9syuAN0Oy2ueu6h4dw7GxSwOljgb\n" +
              "G3Eue5sZN0W16lvAXzTjQ6lNjLxfDY343BPZDbGueXm9uyR7UfCeHPwj8Q+RsTHSOAZHCTka0e9a\n" +
              "V19iINrU0psBls+ClACawiBs9ygfwTAUnTjxQP3J6TDdEdCgQAKMDRC0WiCAS3VOL2KRNEJ+Yv1o\n" +
              "C5BOBablaXOkBtbSxelzc3C5ta+LetqysHpdJXDJe/q3/Yg1uFEnh2GH+E32BWgbVXhpLcBhm/4T\n" +
              "PYrNVraArFpwaURcmzlTQmu9010CousSzhBR408t4fMaNUuIxDC54czskDXxXe8RyPwMolHYLaJ7\n" +
              "lwcjZI8TJC+PtMNE9+tLyzevzUwZ2EhpNJJ5XFryDYSXm9HDdGiH9IMIxptue682q9OYezRK806E\n" +
              "xufx+N+4ZG51/V9q9KaF1RzXsfpT3SAlODdqiQOFqSIdtQjcKSJ3xhQWwSlaYG06gXnSJSTFAQ2R\n" +
              "jZANkQKCQbIXnshIWk4WwFBGi5ITyRgarQc8gnATVdIwKAvdQOO5EBSEboigSMDRCBaMN0QIbp04\n" +
              "GoT1SBwnohIDmitQRYl5hw0koBtjSR4qngji+uyTuke0NOuX26eIWnkbI2ntsI6sk6a96ChFNOZ2\n" +
              "20uBfRYXDmNh30rOKlcxjMpAL5GtLq8m/Yk3CQMc0shaCHW0getT5GuaQW2KGiDOxmJnZN1UZ7BD\n" +
              "QTY0vv8AFSwTyvELnk9pz2EVyF6+xWXYWF7rfHmJIsnwOn2o48PFGBkZtY+tBUmkmGIDGPOYGg07\n" +
              "EHn6E2MdNG7R0hBcA3K2haumCEm+rFo3wxuyZmA9Wbb4IBwjnGFvWFxeNy5VpHujile2XITK4HN9\n" +
              "QWhvWyj+DxOsPY11uLiHa6lBQgxOI6ynSAkktIAGmm6c4qZzMM4StOcMLwALorR6qIElsbRy0CHq\n" +
              "Izl+LaMug7OyCPDiutHaIEhoHkFVfiZutIMmRpc8EOFloFUVoxxsiFM77JPek5kbrL2MJO5I3QZs\n" +
              "WLm6xrXvtgy9pp8qzzHOrG3cpOsmkw84Y8yOYWua5vMUDSuthj0pjQR3BSsYxl5GgXv6EFTBZzNL\n" +
              "n1OljuWR0ztvDZddeqP1uaugjiZCTkaG5tTrzXO9Mz/QXDvaB+21Bv4UZMPEO5gUhKGEXCwdzQEe\n" +
              "VA1ULQlSEaUoy1AB8ohOAAdUi0pueqCl0hf1fA8c8mg2JxJ9i5WbFDHYPD45rbc9oa8tboXt0PvX\n" +
              "QdLpCzo3j/0WX61xHRXGufg5uGtZWplYOdga/UvHN7fOdLEot5zAWO8pI5sHFO7O8yF3MtdVpLyb\n" +
              "05P/ANP2xvxWJlY3LlYG+s/yXcBy5foNhzHw+aUtrPLV+ZdOF1uaiGoJRN5oR3Im81QQCOIfGkph\n" +
              "yRQg7nxQWW96dxpqFiUnki1AwOicalC3YqRg021QENk4TJ+dIC5Ij5DVXmkmY0dVHnJ/vUo+vxNC\n" +
              "8HZ/ShBP8pEXBjC4hxA5NFlVutxOv9Dr/NCmiEk7CJojFemj79iosO02Ti6Qg6o2oE3mjrRDVbI2\n" +
              "jZA4GqcdyYbo6UCrVEGpgjGyodg5IqTN0CJu5UDfJKdp5JEaFO2qQGKT7JhsiFVogZO1DaIGkBJw\n" +
              "LQWnBIQSJ9EAd4pAoJLSQ5wEs/cgJJMHap78UCStK0kCJJXN9NDeFa3vdHp53hdIua6WjN1I75oR\n" +
              "+2fcg6NnZaG+COyhqq8yQPeglBFIT4JhrsiAQMG3ugcKKN1hDdqDB6YRmTo/ioxdvby8/wDJeX8J\n" +
              "xeJwOOhxBbkeHWb7l650gLBgKdqXPAC8i4wz4PxF2Y1erLXll29vn46/Eslimd1JGV1ObfdySS4B\n" +
              "iY+LcLhPWs62DsOzd3yUl56ejN6LxGLgWEadCWZj6StcCiq+AjMeBw7OYjA+pWg0kLq25abco2t7\n" +
              "0wFI2lULko7lhjc5kzSA0mnsv2UpRvqouIuLcBiXDlE8/UUFDovxPE8TwXwrEvaCaprG0Nz9lLbO\n" +
              "Z1EFc70Ijy8Gjrub+6D9q6LwUDdsjRzR+raWQk2+V5Ph2Qn2RDVAgBe1+No6BOyTKRlIF3Jwm7k+\n" +
              "xVB16UQGqZhsIrCBNA1RkUAgbuoOIvfFBnYXAirpwHNBbLdRqi7llcRnlhwsRjziQzNtpdeljmh4\n" +
              "djJJRiRL2JGyktBHLzoNgDUI9wCsXh+LkLn5pbb/AHtRzTxz4gyQgl1dWTrXMitSUG1ROnNFsVgy\n" +
              "43EtlxIt4EcoytLdaFWOdbqzicXM2WBoL2AjM7YXQ2UGsDdI2nKSCsSfHTRw4SWIOeZAX5RyFX4K\n" +
              "XAYjESYd/wAoxHsnQuI3Ir1oNc6t0QVXNZuExE0mEfI6QU2xnIBaT/JV+HcQmnxTonSNIDu1W3o7\n" +
              "kG7egT2QEF1onvmgkG1oXG0hqnG6BN2T6prFpxugcm0gVCZn6gQSE8is3iHEJoJomhzcrj5I0N9y\n" +
              "DZTtdQpV8NKXxs6yRhkc3NoK08yj4pOcPhS9jgx50b4oL2YHmkO9Y+ExcxZiczi4RB2pGxBKPD41\n" +
              "7pIW9cZAdHMy+BQa42T3os3D47PPBEHXnzkgto6bbKTFYl8OMa0uHVGzR0OgPvHqQXztouc6T64n\n" +
              "CN/6iH2uXQwuL42Oy1naDXcue6Qn/aeBb34mL2OKDojdlDe6N5B171GQgkaQKRghQ9ycFAbjZpNS\n" +
              "a9Ex23oKDJ6S31EQFVn1vwXnXSfCfCXdY0A5NWnw7l3XS17hFA0Au7RJC5HGmOaEPAdeo00Xlk9c\n" +
              "fHEwzz4KSQwzdU2SnVZSVzF4YdZT23WySm43p38QqNja8kAfUpRso2lSDZdDmOUTAKQlOwUijoEq\n" +
              "rxc1wrGHuhf7CrQI2VTjenBsce6B/sQUuhwrgsJ8G/uNW4TqFidEK+48V7AM/datDic0kGFBiIDn\n" +
              "Oy33aEoLYUl34FZMOIxLoJnPdEwB7spdbiadrtyUXCsfPiJ3Mke0Frjd634CvRug3dgo5RiOsuOa\n" +
              "Jra2cwk/vLHhxeJc6P45zmZ+yC1tubfO9hoQrWMxk0c3YGURCywuAz+fuQXA3G7ddB9EfeirG6fG\n" +
              "QV+YfeoJsRKImU5sBkNZnEHKRrVjvCHEYzEswTJ29W0u7WW9dtAgttGM1IdB9GfeirFgWHYcn80q\n" +
              "jgOIPmwr5X5SGsGWx2nHmfH0JcO4lI58keIfdeTlYe0e++W4QXmnG73h/UUnx4iXy48M+6uw6ln4\n" +
              "bic8ssReAGPcTR0OgNj6lsAmrCCARYgty9XhaBzaF1b+ZGz4ZHmAjw9udflHn6FO06J0FWJmJjBy\n" +
              "Q4YXv8Y73IDg6P8AU8KTprnPLbkruxFJybu9UFYwzPZI12GgyvfnI687/NRyHESEF2GhNAgfHHS/\n" +
              "1VYae9GDYQUurl6tkRwkWRgLWgSnaq/FSjglY1wbhiQ6s14glX72TtIQUWQPYHZMI1mZuVzWz0CD\n" +
              "4UhZh3sfnZgmtdmvSb26LSFFIHUoIOuxX9mH0o9yLrcT/Zf+6PcpbIKIO1QQtnxAu8Lr+lCcS4n+\n" +
              "y/8AdCsDVPSgrmbEf2X/ALgRxyzOeGvw5YPxswKmStA6gmwcE7w+Vuch1glTg2mJ1QAzDRNLDkvI\n" +
              "CGkm6BT4iATsyvugQbBqqIKMHuRDVBVHD4Guc5gc0OHaAOhvdG3CwNlZKGZXMsjLtz+0qbmn86Cs\n" +
              "zh+GYxzGx0XOzXet3yUxwzJGOYbGbUuBq/8AWqkT3SCRmgAGwFDwXN8bGbjvDm8vhbB6mH3ro2u1\n" +
              "XOcTObpFw9vP4ST6owg6PkEjSEmqTO3QOd9E7ShtJAZRAXV7KLVGw3ooOb6XyAHD8yLNd657EzNb\n" +
              "HGKaQ/R3gVv9LsvwnDgntZTR7lyxOYvztzBpOg7+9eeT0xYHFoJRODDsbtJaszetNjSu8JLOnrtv\n" +
              "t0u0YOoQ7kpxqQvdypAbKJR7FE02iiHlKpxwkcGx3jh3+xWjpqFT44b4Njf0L/YqIOihrg8X6p/Z\n" +
              "CvTYAYmRr5J36OLmtLWkDzaLP6KE/ceLwA/datoFBRbwoMe57MXM0u7mgAXqRSUHCRC8vixDmPJJ\n" +
              "FMaN/QtIURulzQUmcPkBZ/TJOw8vByjf1eKebh8spcXYt/aFHsDbkrw3RVzQUpuHzSnt4uwNKyef\n" +
              "7E7+HSvZ1ZxZLeYLD71e3pPzQZ+H4ZLA1zYsUA0sDTUZF+bVHBwyTDyZo52B2a7MZ0BrTfwV5ppG\n" +
              "EFBmAxDOrIxTD1Zc5oMR1u/FStixoGuIh+hPvVtNaCBseMA1mh+hPvRVjOU0P0P/AJKcGwiAsIK4\n" +
              "GMJ/CwfRn3pw3Gc34c/qH3qYaWnBvdBCBjPx8P8AMd70QONA8rDn9V3vU7UWyCAHG/8AT/tJx8N1\n" +
              "/q/1qcFE1BC04wbtgP6xSccaDozD0f7x9ysBJwurQVw7Gco4fnn3J8+N0uOH6Q+5WAANk6CDrcZX\n" +
              "4KH559ycSYw/8GH559ymSQR58X+Rh9En8ks+L/IRfSf+KkvVFZUEQfi6/ARfP/8AFLPir/ARfP8A\n" +
              "/FWW7JqsoIWvxf5GL6T/AMU/WYr8hF9L/JT3SYFBD1mK/IRfSfyS6zF/kI/pP5Kwkgr9Zi/yEX0v\n" +
              "8k/WYr8jF9L/ACU6bfvQKJ+ILj1rGMHg6/sXO4p5f0swDL2fKd+5gC6MkhcvEc/TTDg/Iimd+1X2\n" +
              "IOqLkg7vQg6JwUBWEkyVoHvVGCKUZRA21SjlOnT3tlwuTYtOYc91ypkfHLmbq1xpdP02mDMZh2kX\n" +
              "2D7VzYdYGYCrXhle3piYzUBmBBKSWdo+UHapKdttu/Uj3AQDUDuRA6rqjwFeoRBAUTSBugMbBVOM\n" +
              "i+EY39C/2FWgRQVbi2vCcZ+hf7CgpdEiHcHZ5mfuNWrPNKxwEWHdIO9r2j2rH6Hurg8Z8GfuNWxP\n" +
              "KyCIyvByjekAsxOIHlYKT6RnvRnE4g/8jN6HM/iUcGPjxEwiZmDzdjKrjSbQVxi5Rvgp/Wz+JEMX\n" +
              "L/Y5/wBg/wD2U/eldIAbipP7HiPU3+JEcW8b4Oe/zW+9SNPijaRR70EDcW7+y4j5o96MYw3/AFbE\n" +
              "1+Z/NS2joUggOK/6fED9T+ab4V/gYj6Mqw57GMtxaPOo2YiGUAxuaW1mo6EDzIGZixX4DEfRFH8M\n" +
              "aP8Ag4j6Io8NPHM13VODg3c14WkMThw/Jn7VbVqgj+Gs/I4j6IpxjWfksRf6Ip34yBjntdIMzC0O\n" +
              "F/jIsRiocOM0rxW+n+vBAJxjB/w8R9C73J/h0VeRN9E/3KUzx2wdY3tbEHRB8LhELZi8dWSBZPNA\n" +
              "hj4aHxc9/oXe5EMbFr2Jh/kv9yeLFRPLg2VpyaOTw4yGWw2RpIdl03JQIY6GvInP+U73JzjoiPIm\n" +
              "H+U73J24mF7msa/tPJDRfcmkxEMcgjkka1xBOp277QIY+GvJm+id7k4x8PdIP8p3uTPxULCAZGgm\n" +
              "qF9+xROmZ1XW52lvNw1QN8Ph/wAX6Jyf7oYc85B+o5H1rA3MXtDe8+ZOzEwvYXsmbly5iAdggj+H\n" +
              "Yc/Kd8wp/h+HA8p/zCpGTxvdlbI1xFWCf9ckm4mFz3RiVmdtWLVgFuPw2vbd8wp/h+G/Hd80qe/U\n" +
              "nuiggGOwx/4h+Yfcn+H4YfLd8w+5TE+KJuoWRXHEMN+UPzSkMdh7/CfslWQEiggGPwxNdZ+yVLch\n" +
              "ma9rwYspBFc+9ENDadziAgR0A5rl+GHrOmMj68jBuPzpCuncaolcv0eOfpFjnkatwsTfnEuQdUkl\n" +
              "okgXJOmSJQPaIHWkFgp+aXw/rkOmxviDCBeSKx61zbHve85sq6DpW/PxgRnYMF+1YTmGOVp9YXNl\n" +
              "69cfEGJhpwyB3jRpJSz/ABpEgAOazXckjTca62DW9E4dRUULg6FhF6tb7EY3XU8KlGuqSYGhSdAY\n" +
              "AoKDiOvDsU3vhf8AulSAlBjLfgp28zG4fUUGR0LJdweIbim/utW1joTicI6FpaM1eULWF0HdfB2V\n" +
              "4e77F0fNBlYPBz4XH9eaMbiS63gBg1/ktQYnD7CeIV/fCLPYIdqChEMJ16pnzQgcYmC9cRF88Ivh\n" +
              "MHKeM/rBCIIfyTPmhOMPCdoY/mBBIMREdpo/nBO3ERg11sfzgo+ohv8AAxH9QJxh4CfwEPzAgmGI\n" +
              "iLtJGH9YKYTRn5bfnhVfg+GG2Hh+YE7YIBr1EX0YQSYl4fE5kb2hzrDXB40PrUMBdGJXvit0uppw\n" +
              "A00A30FAIzBh7sYeP5gTmDDEi8PEf1AgrYeCSLFx+SWZnSktoUdg0KQNc3FPl+OyljeznYL1Oitt\n" +
              "w2GcR/RovmhOcHhv7NF80IMnF8OfLiZn9bTTLG7Q8wRr6NVZ4lBM+GPIIzIGFrhHoB2SrZweGGvw\n" +
              "eL5gTjBYSh/RovmhBUmjmjMbmAy5GuPYdrfK7KB2Ge/CDDujeDnj1FG23d151otweFr+rx/NQ/A8\n" +
              "ID/V4/UggweGeMTPmLmaBoy7OPePUEGBw00M0DXZiOqdmza66bnvV0YPCDX4NGl8Dwh1+DR+PZCD\n" +
              "Iiwk0AjbJHPIC8OcGg/jHQH07lXsWyV+LZNDDKWMrM5uh8covUHnatDB4bcYePXvCQwWGvTDxepB\n" +
              "R4nhZcTJG/CwhtEWayuA3P2qzllGGiayAh7HWQWtoizY3Vj4FhKr4PGPQl8Cwv5BnqQVXQOdgRB1\n" +
              "JL9LLmjU86o6KHB4aZmAmiljc2R8e4G/gD3LQGBwo/5dqL4DhMv4BqCrgcPO3FNfKyWiD2j5uYPg\n" +
              "osNhXjERvLJg4v7bwNSNaB9a0G4HC0B1LfWU5wWEAHxA9ZQXDfOymVUYHDH/AILfWUxwGF/I/WVR\n" +
              "bpEHUNlSGBwx/wCCPWUXwHDfkvasi4DafVUvgeGqup+spxgsMB+C/aKC2PFBM97K6tme3AHXkoPg\n" +
              "eG/JftFWYmMYwBooIBmdlie7uafYue6LDNxXizz8kxx+pq38a7Lg53dzCfqWF0QFycYk78a5o9DQ\n" +
              "g6TZKymSQPZTbpJIFdJ26m0yceTsl8SeuL6TPa3isz3C6DW/UsN8jXbFwP41K/0icyXjU7S40Xbe\n" +
              "hZsjnllhrRTCW3z865svXvPChc6nAUAD3JKGeGV7hlkLaHLmks7XTcwLs2Dgd3xt9iscwqHCH5+G\n" +
              "4Y98YV7Q0uuPCjB1T2UA3pFYVBg7JP1ge3mWkfUmaeScGkHO9A3f7J0837TvcuoGq5ToL2cHKzuc\n" +
              "R+29dTegQGQLSadUwT2EBZkTVGNVDjMU3CYZ0xDnVsAgt8ktNuaoYbiUc05jyObtlJO+iTOKQSTh\n" +
              "gdYNkHU35Nab62g0LRBZ7+JRsxQhLH1ZaHiqOUa0pZMfFHJkIdl6vrCWgn0ILiTlHBI2dhcy7Byu\n" +
              "DgpCgdjyzXcKzG8OG/oVUHkkTrYKC2U4UIk1Fo2vvzIDspc01p0BA6BJCN0SB7KMUfOo07TRQSbF\n" +
              "O02hOqQ0QFdJwUO6cbUgJu6I0SowaT5kB2OSclA1EE2gm6JzsgtOopUnGlpA0EyAkrNphuiKCvxA\n" +
              "/wBCmHe2lj9C9cBi5Px8bM766+xavEjWEdpu5v7wWX0Kbl4DE7m+SR/ntxQb9lNZ70k5bpaAgeae\n" +
              "0F6UmBpBJoldHRBVlGCAQl8SevOeKOkdxbFSX8twAIVRrIjifjHEmRtNF7XzU/FZSWzyghzi8ixu\n" +
              "NVWMbIwHsbmkDaa7kAuTLLddEnSCXCSufQc8hrQNCkmZjXwNyyVff3pLKtHgEnWcHwzueSvrWmBQ\n" +
              "tYnRB4fwOGuRcNfOtsEjzLtjnENk2tpZrSBvdUSNI57omntAciownv6kHN9DjklxkXMSPH7f811W\n" +
              "a1yfRjs8W4jGeU8g+tvvXU36AgluwkLUVnvRgoJAocdA3FYWSE6F40N0jtK0FaHA9XiesaWgBlN0\n" +
              "2dY182h9aDD8Mkw7WGHEfGMaW9pgrkBSuNcbUl6hBSn4c6WSZ/Whuesuh7Onn5o8Zw8Ysk52x00t\n" +
              "bTdgQLJVy09bIIYcO+PL8e8DrC4+IPJWpH0+vBC3XTmlILCBB17owomhH5kBImuIQpIJ2vPNSXYC\n" +
              "rNOikaUE4Ke1EDrujBtAYSTt2TVqgIGk4NoB4J9kB5qTSSMiYXvcGtHeoMViosLA6WV2UDx1Ky4s\n" +
              "PNxY/CMdmbB8iEfKR6/P577qw/jIllMeBgdO4c9mpms4zM/MZIYGkeSNUDMeyLqeojZHBnyuYBbm\n" +
              "+fu9K2GOsXuEemdmHkZwwnEwHVj8xr8VEJuKQi3RxzjnRpXJpmxNui53IDmqcclzszznM+SnN5N0\n" +
              "0CMY3l3oeD4th8Q/qn5opvxH7LSA7IVLG4DD4xh61ozAdl40LVQw2MxHDsQzCY8l0bjUcp7kMscb\n" +
              "43MycG0A1FjYpwaUeIwnsKMElODaCnxqTLgb/vA+rX7FV6Isy9HMB4xg+vVLpPJ1XC5H8g17vUwq\n" +
              "z0dj6vgXD2bVAz2INBKykkgSSSSBA7Itmk3yKEE2ByTTPqKTwafYpfDH15zM+GRrmVqZDr362qeJ\n" +
              "mEXbZboy0ZvBE9oHkmi0pNlieHMAaWu3vZcVvbrmPSG42gOjiEjX62eSSeRmR1NdQrQBJORxS9Ej\n" +
              "XCurOhY9zdvMfetwa7rlOhkrhgp43PJIeD9S6MSa7rvjkWNAnzqEPso7HegkBT3ZAUQdRRB+iDnu\n" +
              "DHJ0m4mzmZc1fnNBXTkhcpB8V00xIuhIyN37BC6e0Eo1CcOpRtdSIHVAYNlFoCorvZESdEEgIKIF\n" +
              "RghEEElkJw46KPN3IgbpBI1xIRXQAKhDxdI3HRBIHAlOoWmtVIJL5IDzJAobSsBBIDR8EQcLUYIp\n" +
              "K0EwdqiD7KgDtN0QIBQWGyBGHghVCRyTtfogtZgm6yhm5DVQZiqHGcX1GD6pn4SY5Wo1hjyugQf7\n" +
              "VxzpXg/BInUxv4xV1vEPjHtr4oUMwBsD8Yjuv6lTZi4eGmPBmEkBgLnX376IY5sIZWvjxE73Zw+i\n" +
              "TV7V5keucz/5Q4/F9VjcQxkOaIj41rjTSb3VjBY90T2x1mOQHM59g76BSy4PD8Qc58j3uo1Y0qva\n" +
              "p5cHh8jnSNDsrat3IBDLPljMf6efFzuwkc0EYN6y04AsA7rVZuJbIxsXUFjc+ZpINjS7Nbq3w6SO\n" +
              "TAx5C50eodm+u/OjdhI3RsFNJjbUZdy/1ojzlsmg4fHPlhkeWNGSMOuzzv3KSdkHEYOqztzObmbW\n" +
              "7dNFnPkjjibhOrEbz2ZMxINNHJAHSBsU7ZY4y13V2xlk8vTsEemGFna/wfEve2TDTfhIDl84Wkd1\n" +
              "iTyfBuNwPAIbOyneJWxmdZRj6461YMGk4cLtR2UrPIWm3myOmzwzgs979TJ+7X2rX4c3Jw/CtOmW\n" +
              "Jg+pc903eXcLkZWrm185zR9q6WIFsTBWgaB9SglzJ7CBvNOQaQEkK5lB2gNkJL0ErntB3VPHzhmD\n" +
              "xDg6qYVN1TnAlUeOMEXCcQ6t20fSs3yrPY4BxJcQ7bvTQsZE3LbTbkOJLbYC06mtEM0VEH5O/mXD\n" +
              "fXbPE72Bx8m0lG2U5G7elJFYPRSTJjJIg8kPZbTW66sPs+K47o49o41hC13Ze+ifQV3vVMPyavmv\n" +
              "oxwVWa/LzUkcljdTOw7ObT6Ck2Bu7Q4IB61vk804kugpBh2nVzSpG4SMixdoOW4i7qOleGm/KRAe\n" +
              "p1ewrpmkrA6UYbq+J8MeOfWi/MA4LqG4UVugr+lECVY+DBH8EHegrMKLMVZGFGUUdUTcKgqtcQUV\n" +
              "lWxhgFIyBloKTc34qNod4q+YQCUhG1o2KCmGG9kWR5OoV9kTHMsjVINAPeEFHq3D5Npw1w+QtFob\n" +
              "qiaANUGcGu7ii6pxF5StG2kcinaG1sEGayN7geyU5if+KVpAN1oV5kTWt5oMsQvUggkK0C1vcE7G\n" +
              "gE2Agz/g8npRjCv3q1oUO5E3mmxnNw771asriuBkm4ngWBttGp9a6aln8R+Klw0ulB1E+lHt8brJ\n" +
              "Rx3CMRiJTI6PMC3K1rDqN9d/HxWb9wniZzJHTA5rzEW3Tlfn8AuzDgRpz7k5IIHijc+1x3GbBg5R\n" +
              "hGta1rHBurToL57LKxv3S6p8L4WMz23M0mqXUa8wSfMqPE45Z3RQxtFk3ryV2x8s8ZnvJy/D4eJR\n" +
              "1BhTlzO5jQLqMDgMRFEG4id0kvytKCifw2WFzJMPJnMZstIq1rMfmZ2mBprUWpt6fbPHL/Kg/hpf\n" +
              "jGYgvtrG5WsLdASpW4BjHueA3O8jPohxeKELg9pJ0sgaivH3osPxCGbsG43A1lfoPWm3nxz0p8Xw\n" +
              "D34jBPD2jJJ7lpHDUTZ5qjxSQvxGCiaSMzidD5lqHmofTrGRE3Ct5lI4cA7qazQooSXI8XLdMMPm\n" +
              "ZCDtniBH64XTiDsjULnumQLcIHlxsU6/M9vvXSMJc1p7wgAwjTVP1RrQoyn5IIhE47lOIKOuqk2T\n" +
              "ZigjMRLvBZfSZjW8FxBc4jYknzhbIeK21WX0jBfwbF6X8Xt6QsfxZ6814lFFBiomwYmOcPq3NcKa\n" +
              "r2I4Q8QfCBiYeqy2d1kz4VjyXSNHYAy0EpIGPiLc8nVgbBx9657rx0za3gMEMfEZI8TFQNdokJKh\n" +
              "HgoxG3KxteISWdRreTI4EY28TweWr6wWvRMgIC8x4Ca4tg2ixUo9q9QG4XbK5MjCOkTW0UQKSqHy\n" +
              "o26IRqpAKQc30r7XEeFC/lS/urqGHQeZcv0n14xwlo/FlP1BdO11AIJCUQIUYKfMAQCaJ0QSgkeZ\n" +
              "EoyRV2KT2a+xBKdQUzaCYnv9X+vMnZRujfP0IDuynGuiDVqcGg4+r/XpQTtBA8EANPpSRWI2g6nn\n" +
              "adwF2RRQCFJyQWAm6xt70mwWykBAAUYcywM1KUNBOhB8ybD8k7eeqWQjcFINKgflScJqS2IVBBw2\n" +
              "RaclFeuiK9BSAyQBqa8VQx0bMRA6N2Ka7W2i27+pXdK1SDQSNAdbRcbqsjDY954W7Fde4zwOy9UX\n" +
              "aaHatynfi3T4rNqANY7dQHn0R4yFuExpxQjbJFJ+EJGysQYWF7+uBbLFJuHfJ8yOmcdbo24medrX\n" +
              "wwPbtYLgB7E2Lnmiije17i4Nc51VuAdCQFdOHhcQ4xRl2mpaEmsZkcwta0O3A033+1HNlq3pWGJe\n" +
              "cE8h/wAcQAzTTUaKTrXfB8QHO7cea/8AXqVgMbTTp2D2fBM6Jj3FxYCXAAnvHcojFw0EzX6tMlRB\n" +
              "wYeyb7r9KtNimkyQyYQhpq3FwdpzOi0WRsbI6Zrae8Vm8FBjMU2MNhaC6R+lDl4o9vnnb0y45JZs\n" +
              "c2WyWRTdXZOlXsuh5DmqOEwUMMeVzQXF2Ym+d3auXzRj6XdEmOqQNlLZGGB00ZfCZDzETz6nNP2L\n" +
              "cwxvDxkbFjT9Sxel+vCJz/gyfu/yWtgDeBwx74m+wILNprKVhLkgSSZPYQJVOKtL+GYoAa9U40ra\n" +
              "jxAz4eVtXbCFnXqz15EcQ+UsbWQFuvnRxx5TobrmVA1+U05vhabEydW0gOAHIrjvrrl6STl7SAw2\n" +
              "zlSSrtxr2tAERdzNcklrSbYnAQDxbDO59aPavTByXmvA5YG8UwkYFudIPRqvR2k34LsxjmySA6o1\n" +
              "GDqjB7lpgbdEdlRg6IgdlFc50geT0h4Y3uY/6yAun3Nrl+MnN0o4eByiJ/baunCAgaWTxN87sZh+\n" +
              "oEmRj720e7KdAtYUlXasgE3YUGVj88nwdmd8RezQPdRFEXeqLEzTScPgmY8uJfma1pJLhet3Zqr9\n" +
              "YparSPKB25pcxtppYVFHh882JY9plc/sCsziObr+xQYJ0rGskcXuHwPMC5xoaXry39i2GAi67vDZ\n" +
              "ExoAAbtVVyQZ0UrGyQyNxcZcWkZWyWSSO61Wws8rMTC+UuDpZQxzPxaIzXXfyW0ImA21gB5EAIms\n" +
              "YZGU0XmzuIGp/wBFBaadBSK0IINck6gSiO6kOijO6CImynaHA2HEISe0EYQSxzSBwpx9KtslPyiq\n" +
              "YoedGTRDkF2w7ZRu33TRk5cyZx1tAWyfNqoiSldUqJ70tPelqhxNzvgpEb3seT2Mh1J5BW2Zmtbn\n" +
              "d4KA3NEjcr6LTyKzJIMVw97pcL8ZATZj3IWlZrRGXN18d0bwzsVsJxTDzis3VvGha/Qq4CD5iqOJ\n" +
              "wOFxBzPj7Q+U11UqjcFkk/o+PkbW7d0XWOXbbzCwCk+VjAS80O8rDghxk087HYx1RODScu5q1aZw\n" +
              "yHMDO98h/vHRDjjBzcRdK4xYFmdx0zjYKXBYUwuMkpzyurXuU8cbIm5Y2ta3+6NEVeGiJcpOoMka\n" +
              "I8wVHG4tmDha97c7nvaxrfFxVg6HVGE2buTXajF96K0GN0q/3TMP8OQfslaPCn5uGYQn8gz2BZvS\n" +
              "jXhcv5kn7jlc4K6+E4I/4DPYg0LCe6QWEJJtBJmSsIGnvRaICzBOaII79FC8kJmOIIJKlJ68hne5\n" +
              "mIxMbwAWvIaR51WmzNis5XZzRFbLQ4jkZxDEtlYW05x0G5tZs73mEPDA6niq7vFctnbpnhDJlBN3\n" +
              "4FJFK4tPZi33ypIrC6Nwn7r4R5G0o3Xp7DdrzXo+4niuDafxwdfSvSGnVdbkqRExR5q0RgGrC0qT\n" +
              "REDyUXcizaoOf4pr0twYHKBv74XThcpjiXdMcMO6Bv766kGvMoDBT2hBtOgqcTxfwKFkoLQ7OB2u\n" +
              "5QYXieIljnkyNGVmZlk9mwPRQV7E4dmKjEby4NBB7O6jjwMMcczGF+WVpa/teVpV+dBHgse+Rz2y\n" +
              "ZJHDNlDQboUhwvFJXsAkjaXh2VzrI1zZdBStRYVkTnPa6UuLcmshPO71Qt4fhmPDmNIe0jXPzBBv\n" +
              "zkgIDOJLeJsw5HYyW7zkih6g5XoyOvcBsGV9apOwkT43sdfbdmL2upwPIg8u71qzDlZK8g/JAQWw\n" +
              "dUWdRtRWLUDk6piNdEtt09qCu7ygpGabqOUW8FPraCVutKQDOQFGzkjunNpUTPdQr6lG55BaCRqd\n" +
              "L5pSkE0sTFmKUYmVz2nEMcWwMDtWFu1DxPcqNV+IkjxgjlEfVPYXNI3FVv8AWiw+NimeGsa8Bwtr\n" +
              "nNprx3j2rNw8EnEHunxkbo4i3K2C9a533A/WreDwroHi5c0UbckQa3YHvQQuxEuZ2NfGZMPEXlrW\n" +
              "kZgBoXeOxPpVjBcVbisoLe0aLqcNLbahlhAhh4e02wi5PzBv6zSngwkUT3lttaXAtGY0wAVVINBr\n" +
              "m6rDbxHEYl744RM6drspZGwNazutx3//AFX8dI9mGcYy+i8BxY0ktBOpA5lRQBsuJhfhoerhjaQ5\n" +
              "9EZweQ9Ot95QJsssGQY0ddKWF2lhorzBaGHkzxMflazM0Oyj5Kr4jDCWR7rb1hZkZY0b3qPFZ4OG\n" +
              "ujjdbsgjafE9n7UE+A1hdN+Ve6Q+bYfUAp552wQOkIuq0tBGBHG2JmjWAAIZ4+vgdHYFkcuSgUWP\n" +
              "jfi3Yd1NkDQ6g8G9SPXomGKnjxTIpxGWSuOQsOoA1JKzX8MxObEGN8Az9pj8hzNdd7/UrWEgle4v\n" +
              "xDHA/LLnhz3nmNNggkxN4nFYMV2TLmYD4A2fWpX8Tgyy1mJjvSvGvsQG38RaBtHAdRsLJH2KJ3Di\n" +
              "RMYi0vkdY5ZbJP2lBqBwLQQbRDVR1fo0uqTjTmgy+lB/2VJ+ZJ+45T8CN8HwP/x2fuhQdJ6PC5AD\n" +
              "8mT9xyl4Cb4Jga/s7PYEGkmadShsJXR0QESiY7fVR2mBrZBI42hsA0UrQvASrHl2MBxMuNjdrLFO\n" +
              "4+cWVSkcxscevYuyzmrb8RHhuM4lzt3SPzjwsqvxXDOYxjg2+0W21w23C5b698b0rR4pjy4gmPXY\n" +
              "DdJVpHyPOZsR18Ek0u2L0clz8cwR5iQendeqCrFLyjoyHHjuDJFVIvV+YXW5aKhSJpNaoOaK7U7U\n" +
              "QKcCjaG6KLMbVg5zFG+mkQ7oGfvFdO29LXL4nXptGOYhZ7SumtBKTWybrAD2nAecoQ7RY3FBI/Es\n" +
              "6uLOCcr71DdHbd5+2kG4JGuALXtoixZ3RFxbV6V4rnsWAfg7mMccPka3O1oAu+7fRSmUu4Tlc1wn\n" +
              "L7MeYksOYaDvQboe0NJzChub2Th2YmjsdVgNa5mCxcTQ5sof8Y525aXXQHmRcLnJxLm4nE9l92Mw\n" +
              "B2FaDbY+tBvtNg5SCbop6qUnrGixVLHwv9dBt1yFzy3M6w0AAc9jyTSuEszZZnSHDseQZBmG4BDr\n" +
              "rvFIN4OcCAJaN7Fv+u5M2STydD59CsTFurFzPBHxZDhruCCKHrUnE3yxzte0vLhGQcjfJ5691lBt\n" +
              "umIcWvGXbVJpLrp2iwZ8TOYWNZJIRmfmJa4mgRWvrQYHHY1mGxBkDj1bBlYfKB1Bu/N9amh0BYCd\n" +
              "0xNHTVZ3DHzGGRsswkcx2rs18lYixIkOUC35M9abd6aF5h7t0QLSRycdvFZfw2WSaBkTMokGbtHW\n" +
              "qv8AkswvxLMTG9xcWdaRbS45Rrtprz9So6gk560OvehaxmbM1gzH5WX+S53GOmZicTmlJHWZ62Ap\n" +
              "rSPcrGIllY9r7LnRsYTHZqTQ2d+SDeOg128UI8pYuLncOFOZhniV4Y/Vjq113PJG/EP+B53uc0tl\n" +
              "aHtJObwu0GpDGI5ZZHOLnSEb8hWgU49aw2GX7n4iMSEmMBth2Y7KOLGzljw6ZwcGPNEVRDB4d6Do\n" +
              "g4HeqOvnT6b733Ln8JLPHiYh1xIMvVst122zY9mviteDENnjbJGTRO7hRNb6ILOayq+KHWTYaM6g\n" +
              "yZn+Zo//ABZ0k05eS2R1DEZRXh51FjzincQieDIYg0DsjcuLb+oFB0FJ26BYD8RimR4dwkphZILA\n" +
              "1JLqHqsJ2z4k4JrTM4TZnNBJ/FbqU0N/MRsdEgdVlYPGExyzS5xHYDWOcC4cttOa073UEbGu+GSv\n" +
              "I8pja9ZVkOUYfqkdAgkzJt0Le9PaQZXSVxHDH/myfuOVro6b4FgP/js9gVPpPQ4XKf8ADl//AM3K\n" +
              "zwDTgfDx/wBOz2BUaVJiSNihvVK1AWYpWhBCIDuNoGDiCnMl7hNWqarS+E9eQcSuTimKlHk9a4O8\n" +
              "1q5hpRicA+AyU8dtp82p+xVsa9oxE4ZZc6R5IHnUcb2x2Ghxdm1/FGi8LO3tigkEj3nqm20bG9wk\n" +
              "mZFE6y8k2dO1VJLLTP6Osb92cKX1edekCRugvVeYcGmDOJYY0A/PouyZipDsF0xz5N0Pbe6LO081\n" +
              "hfCZE7cVIOSrHJul7QNSmMjPxliHEydyYYh/ehyQSyX00a69OpZ7XLp8woarg5J5HdKGuGp6pv2r\n" +
              "fGKeDZ37ldJyroG1yT1fLXfVZOGx3a7Qpacb84zclGpUho7i61shIGtToe+vQmTo0ctBHaFg7g+C\n" +
              "IZebW3vda6oQdQEV6oDbV+Nb86RDavk1VUKpRtNogdUEoIuz3UkTd+jVBfenGqCQ04VQ8bCHs91b\n" +
              "ckgaSO6CS9hX1JmgNNhtGqsd3IIA42iBtAQyBwOUaAgGtrRACwaFC602QFEDqEBEMJJcxpvQ6Jw1\n" +
              "pN0L2uuSE7p7pAQYwMLMgAOhock7gHbhpHcRsm3alZpARaCMrmit6rmmIaSRlGu5pEmA1QN1bBlO\n" +
              "Rtt8nTZHWUUKrwTJ7QD1UJu4mGzdZR339qLJHbew3TYVslabNyQIQRZWjq2gNFNpu3+tERghylvU\n" +
              "sLcxcRWmu6eyE4NlN0N8Hw5c5whaXGsxrQo5C/Keqc1ruRcLTA0ntQQj4YD+Fhv9GfekTjD8vDn9\n" +
              "Q+9TpIIgcXVXBf5rveiYcTnAeYcvPLdotiiLigyeljq4TL3dXJ+45XeBCuC4Af8ATs/dCzemDiOD\n" +
              "zfopf3StPhOnC8H4QMH1BBcJpOgJtIOQHySaUObRNmKCS9U6jDiiB08VKT15Dj3E4+fK3K0SOH1q\n" +
              "uzO1zb7TD6FLjNcbiBt23e1RB5c1obqAvJ7YmMhbo1n1pJRgW7slxvdJZac9wJjncXwznbZ12zTQ\n" +
              "XC8NxYix0LyayG10zOLs0BAXVxcu2sDslzUGHxMc1FrhanBNlGD1aQGo86Q0KLxRWC4ub0obX5Jv\n" +
              "sK1yzEk22WOvGL+ayXkffOLGojb7Ct8agKiAfCwK66H6I+9aeBdjHMynEQD/ACj71TAp1q7gPLpZ\n" +
              "WNAMxmnx8H0P/km6vG/2iD6H/wAlM94jZmeXVXJQQY9krHENdnDM7mZdcuu3qRtJlxgr46Dz9Sf4\n" +
              "kqxhP4eD6E/xKDDcUixM3VCKTNmyaDbxVh07fhxwlW/q+svwukCy44f8bDnzxO/iTgY78rh/one9\n" +
              "S76bEbhEKA8UEIGO5y4f6N38ScDHX5cH0R96lBFo/FBGBjiPwuH+jd/Emc3HflsN9G7+JWGkbJ3V\n" +
              "WiCu0Y0H8Jh/o3e9GPhv4+FP6jvepAKOqOu5BXPw78fC/Md70f8ATgB28P8ANPvUwT2gh/px+Xh/\n" +
              "mH3pAY47Pw/zD71YDgAnB1QQD4aN3Yf5p96InGnY4evMfepb1RIK4+Hf9P8AtKQOxtbYf9pSg6ao\n" +
              "h3oK5+HWdMP63JXjq1Zh7/Pd7lZOu6VIK7XYwfIgv9I73JF2MvWLDn/NP8KnHlI0FcPxYBvDwn/N\n" +
              "P8KcS4sf8sz0TfyU6cFqggE+K/sf/dCcYjEc8G70SD3qfzJkEQxM4/5OX5zfei+EzUP6HMT+e33q\n" +
              "YE1rqnukERYcXFlkbLCQ66sX9SnApBmCcFBh9Mn1wed3+FJ+6tfhunDcKOYib7AsLpuSOCzVzhk/\n" +
              "+o+1buEBGEg8GN9gQT0U48UNlK0B2Ex12Q34pGlAYPJOgFVun3G9IT15DjXf0vEEZgBK+gNt1XZJ\n" +
              "oMuh2KPikwbipjdkPdp6VXaWy9okjTStF417RZY94LsjgBeqSgMQB7FkEDlzSWe1chHrI1W8xCqR\n" +
              "/hArR5L6DjW8FjZIJBbuyV2OAxDZoWuHcuDvZdN0ekLo8qzYreBshP3ptqCcG1ijEdR6VH8xvsK3\n" +
              "bOgKwR//ACmT8xnsK3dyFAatcPdciqjcBW8AKkPnRY0sVF18Douz2q9CijwGWR0hyksZkgokZW0R\n" +
              "r37lXO4UiRtl4bhLoMQZhMHEkHtA+nmrEmCLiZmS5cQTYfl0rXs13UfrVtPVlBHh4OrfK8uBMjs1\n" +
              "BtZdApK1RAJUgbLSOtkwCIbIHBpKykkDogQu0YKBGNAgcHVOTSEd6JQII2oE4QEnabPgm2CdgvzJ\n" +
              "QSIG0DtCna7kgK6KTTZQndLYoDvVPZQA6oswVDgolGSnvxUoO6T5tEFp+SA2u0ScgadU5KB04KYb\n" +
              "aJIOe6curhMv6J4/bYuggNQRN7mD2Lm+nTh9zH/o/a+NdHF5DfzQPqQStKdBdJrKA9E6YbJ1AkOY\n" +
              "jREhcNDrSv8ACevIcbFkxM8uW7c72qt2WsojK7krRdnxGJY4EAOOp+UopYYmHNLp3arwr2iu6Ocx\n" +
              "tLGEtJOoCSsYgB7Ix2S0DQHRJTauPi1kCs8lWw/4QK3ytdzjAuj6OHZc6NSuh6OeUFKrpN9SnaBR\n" +
              "8yYp/BeYwmdrpTPp5LWj9krdokWFh4TXpNjHb+SP2VvgUFQw086u4HyyqdWreBFSKLGzyB5okzdQ\n" +
              "EWXxRszRZT12kgCCipQMiGyYC0QFKhckWmlJgLBTgKBuaekmjVLXuVCpPyT0lSB27J0IRUoEnam5\n" +
              "JA0qHPcjZdIPlAqRpq1A7ttVlw8RkfIY3MANk2AaaM1V9S07sUq4wsIm6wMbeTLVDvv7UFhxqtfU\n" +
              "ntCdU9UUFfGYl0JiDGWXuI18ASiwUxxGHbI4AG3aDzkfYjki6yRr3E21pDe4XzSw0XUQNiDi6r1P\n" +
              "nv7VdiVBK/q45HgZsrSfUiQyM6yNzCazCrUEEOOdLJCxzIx1jS+2nbb3q4DoqseGySRPzk9WzLty\n" +
              "Ne5WG+UgO686qP4lDHNLC4OzRi776AP2q0eSpT4Bkj55Q8Z3ihmGjdvcguwyCaJsjQWhwujuj9Kj\n" +
              "jZkja3egB9SMaoOZ6cn+g5d7DB/3GLp4xTG99Bcv01NwMb3uiHrkHuXTxmq8yoJJNmSB1UEgOngl\n" +
              "mAQF2qYuAQGTzTONxurfKU2bRBK8CJ7u5pUpHjrhNFM8amMuJPirDoWuhDpPLrmo5ZnEue1mr3WD\n" +
              "3JsNLJ1R67kaDjt6l45PaBaTEwN1d4pKTEMOYOzHUJLLTkMMPjvBWdh4Kvgx2nHuVml3VxBGppdB\n" +
              "0d7LgsKgPOtzgN5mp/FdRVhO0IQTSIGgFgYXC9eO415/Hr2Bb3OjusHgXb4hjX/4jvaug3s81A1K\n" +
              "5gR27VMXzVvBH4z1IsbDeSkQDyRSIORsYKcBCN0dqBidE4FjxSaLKI7qgQHUnaE/NJp1UCohOBon\n" +
              "J0TAIEknSpA4S1TIggZJOmSBDdGECJoNoCG5SojVOWp6sUgCrTiyVIxoA1T5ANQgCq3STkapgDaB\n" +
              "wnLdUw3T0cyBiKpMDRKOrQmwUD3YTNTjYphugImkm6pyLQmxsg5npic3Uj/FhH7Z9y6gHuXLdK9Z\n" +
              "8M3vxEFfOcup2J86UOgLqKLe0iAaQCHap3OCE7pigLPpSixbgMLOb2jd7Cj1VbiJy8PxLv8ACefq\n" +
              "KXwnrypjgHgNFgd/JJzRI0ZACWkEOPP0KPrI8obqHHQkIZi4PaWP5VXevCvaeJZsZiDK57Y2kON6\n" +
              "dmvQkiFBjQ54BA1pJRXK4Q0XKzarYYbqcFdziGFt8APxjVh2tro+fjB4FRp1KLkhtKU1C9w3DSfq\n" +
              "WKMfowczsU8/Kefafct4LB6KD+hvf3m/rK3b0UCJVrBmn+pUybVzB6vHoRY2mahPzQsIoAJyVK2P\n" +
              "laQOiV9lAN0EzTYRc0LSitAr1T80yWzkB8kkjsmpA40T7+ZCnBrRASY+CQSQEBfNNlTgpwUDZNQi\n" +
              "2BStNetIDBToALT2gJp5Iy69EGXuTjQoCTck6SBgOadJJAkkkkDVokBSdJAkt0kkHLdKtMZg/wD5\n" +
              "MHtcupuyVy/Spt43Bf8AyoPa9dP3+dKHGiYJ0kCQkXsnOyYGk0EdlT4sL4Xix/gv9hVwO3tU+Mac\n" +
              "LxeXX4l2noUySf6eRBmQnS3E6kpNOY1lquRU0jSwAuAObRRSykNByghoC8K6JDPeGuoh6SJkdNBk\n" +
              "izlwvXkkhpz2H8m1LzUeG/B+lSErucZybPuWxwHSQedYwWtwI/HDzrKuuZ4qPGuDcFiHA7Rn2JAk\n" +
              "FV+KPy8LxB/wys0Vui7cnDhV3p7L+1bJOiy+j/Z4c3Xc16gFolw71AY20VrBPIkVK6BVjDyBrr2R\n" +
              "Y3GO0CPMCqTMWA0DTzqRmIYeeqNRctONCoWvsWjBJ1UE40RAqEOoogdd0VISnqyEAcE9i0Bg6orp\n" +
              "DdUnJ2QJJOhJ1pAQKfmEINBIOo6oDpEEBOqJiAkxGtpzokBaB293em50kDr5k1oJRsm3Q5zSIaFA\n" +
              "4OtJApuaRNlAQNpygB1RoEkknCAeaekiLKIII7N0nCcjUlIAFBzHSo1jcF/8qD2uXT965jpYKxOD\n" +
              "PMYmD95y6fvUoSYmk6YoBzWmITk0NkybCGxVTjB/2TjAez8S7X0K2qXHHVwjF+EZ9izU/ryNr+sb\n" +
              "TpDl3BKlc0siaxjsxdqdOSinw7qdJEX3+LyU2FOZjHvOQnQDMLXnlHTinvOAXh1+CSZ0gMjg0uAb\n" +
              "pskscno5WAnIEYsklBD+DCkBpfQfNEtLgxqcedZd2tDhMlT9rQBRXWB9alVOMPd9y8RX4hUrZWFv\n" +
              "lKpxh7RwrEkG+ys6VY4G4/c+P0rRB11XO4Di2EwuFbG54sXzCtDj2EJ8v9oKaG0XJxoKWN938Fzf\n" +
              "+01OOkGDvV37Q96aGxZ70bXltFrqWJ98WB/H/aHvTffFgubvrCht1uDxRc4MctBjrC4bD9JMEyUO\n" +
              "Dv2lrxdLOGhv4Ueawi7dHmCdrtd1zn328NvV9+YhL77uHXu4qG3S56TiRcw7pfw4aU4+v3JDpjge\n" +
              "THeo/wAKNOq61xFoutulyZ6YYSuzHIfQ7+FMOmOEA1hf+3/Cg7IEHW0nEWuRHTPCjyYZP2/4UY6a\n" +
              "4Y/8CQ+bP/CibdWm5rl/vzgP/LS+p/8ACm+/GL+ySH0O/hV0u3VtNlECFyX33s+TgZz5mP8A4U/3\n" +
              "1SnyeG4n0Rv9yg6svF0jbKAuPPSbGPPY4Tij49U9P98mP/8AacX9Cfeht15IINc0zTqbXIffPjmE\n" +
              "E8KxYHjAfepvvqxBH+68Rf6F6K6uwlm1XLjpLinjscKxV/oHe9L748cRY4VivoD70HU3aLkuUHSP\n" +
              "iHLhGK+gPvRjpHxGv90Yv6A/xIjqLohFdt8Vyg4/xM//ANRi/oD/ABIvu/xOh/sjFfQfzRXUtNbp\n" +
              "w7Vcr93+KX/ufFfQfzTjj/FP/aMXf6D+aDq8wSsLlRx7i3/s+K+g/mkeO8Xv/c2J+j/mg6mxScah\n" +
              "csON8ad5HBsQf1B70x4zxwH/AHLP6ggk6WipIHk6CWE/tn3rphR1pcRxF3GOJNY2ThMzTnYc2Zoy\n" +
              "gOtdsx4yqB3aIHGzok82hUCSSSBtArCpcbF8JxmtfEuP1K2dCqnF+1wvGA6fEP8AYVKT15IMQ5wp\n" +
              "53FikmQGVgztvucDqEEDcjS9wutB4IsO8kOdZ05LFe+JRvmgBbQk8XCiElKeql1k1I5hJZ01tzcP\n" +
              "kBSKKE9j0qVdzgJFFJ1bsyG0lFW/uhKOencjbj5CKeLad2lUSErKDo+HzYOcFroIs3i0LSbhMKR/\n" +
              "VovmBchhZTFM1wNLr8FKZIQd9E0oA3h/WFhghu6vIExPDw7KMOwu28ge5RswT4nh4dGX2SQWaBOz\n" +
              "AESl/WNNOzNtu93p9azRJ1mALnNGHYCHV+DHek5+BbMYTCwu78gQfc4CTMXi3Ou68b0Ry4Ivn6xr\n" +
              "qY4gusm/qUF6HC4cyNa2COr/ABQtyDDYYRgfBofmBZWAjLZHPe/MC7sjuC03TiMUsiyMPh7/AAMX\n" +
              "zAnLIWf8KP5oWc7G0UBxdqwW5ZomaBjPUFB8LYD5DfUFTke4u11TtLS1Da8MW0k9hoCjfiQT5DfU\n" +
              "FWYfUkdCi7WRitfJap4saAdaHoWf3ogRVWibbkU7Hg0VPmBAoLAZI+PVpWlhsYHijuixotoi6r/X\n" +
              "mTg3z+tRMfYRh1EqNDB03SQg80VpsC+6CJrjVhC86IYyapRVprqARBwKhBFbomlUTA1/+JB1A6/U\n" +
              "ow4p90EgOpOie23qoswpMXaoJTIBtqhzXqFG40kCKQS5ikXWogR3pwSoDDi3YohITyB9CiCVlBNZ\n" +
              "I10SzVoFHaQ8EEoNJ8wUZshNy3UEmvoS15IddE4KBKLHjPgcQ0DeJw+pTIZRmw8re9hCaI8Ze5wj\n" +
              "dTsqhjcR5YLWDn+MocRigSRIarkFSnxkj9BsNlqfPbXNpNnDCbLqOySxDI8nVx9aS1+Sfo//2Q==";
        System.out.println(strImg);
        GenerateImage(strImg);
        System.out.println("---------------end------------------------"+"/n");
    }
    //图片转化成base64字符串
    public static String GetImageStr()
    {//将图片文件转化为字节数组字符串，并对其进行Base64编码处理
        String imgFile = "C:\\data\\dossier\\李小红盗窃案-1233333-123213\\电话音频\\电话音频文件夹1\\1554808199665.jpg";//待处理的图片
        InputStream in = null;
        byte[] data = null;
        //读取图片字节数组
        try
        {
            in = new FileInputStream(imgFile);
            data = new byte[in.available()];
            in.read(data);
            in.close();
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
        //对字节数组Base64编码
        sun.misc.BASE64Encoder encoder = new sun.misc.BASE64Encoder();
        return encoder.encode(data);//返回Base64编码过的字节数组字符串
    }

    //base64字符串转化成图片
    public static boolean GenerateImage(String imgStr)
    {   //对字节数组字符串进行Base64解码并生成图片
        if (imgStr == null) //图像数据为空
            return false;
        sun.misc.BASE64Decoder decoder = new sun.misc.BASE64Decoder();
        try
        {
            //Base64解码
            byte[] b = decoder.decodeBuffer(imgStr);
            for(int i=0;i<b.length;++i)
            {
                if(b[i]<0)
                {//调整异常数据
                    b[i]+=256;
                }
            }
            //生成jpeg图片
            String imgFilePath = "C:\\data\\dossier\\李小红盗窃案-1233333-123213\\电话音频\\电话音频文件夹1\\new.png";//新生成的图片
            OutputStream out = new FileOutputStream(imgFilePath);
            out.write(b);
            out.flush();
            out.close();
            return true;
        }
        catch (Exception e)
        {
            return false;
        }
    }






}
